/**
 * 
 */
package com.yangtao.prototype.system.role.service;


/**
 * @author角色管理类
 * 
 */
public interface RoleService {
	/**
	 * @author 胡安令 Date:2011年3月2日
	 * @param model
	 * @return model
	 * @remark 根据角色ID所有菜单页签集合
	 */
	RoleModel  loadMenus(RoleModel model);
	/**
	 * @author 胡安令 Date:2011年3月2日
	 * @param model
	 * @return model
	 * @remark 根据角色相关信息条件得到分页集合信息
	 */
	RoleModel list(RoleModel model);
	/**
	 * @author 胡安令 Date:2011年3月2日
	 * @param model
	 * @return model
	 * @remark 新增角色或修改角色时操作 
	 * 新增: 角色编号和名称不能重复,同进保存相应角色和页签关联表中
	 * 修改: 角色编号不可修,名称不能重复,同时修改角色和页签关联表相关数据
	 */
	RoleModel saveRoleAuth(RoleModel model);
	/**
	 * @author 胡安令 Date:2011年3月2日
	 * @param model
	 * @return model
	 * @remark 根据角色ID号，角色信息及角色和页签相关信息据 
	 * 	a.角色加载时，1.把功能树加载出来（考虑按纽权限），2.点页签表头时把相应页面元素加载出来
	 */
	RoleModel load(RoleModel model);
	/**
	 * @author 胡安令 Date:2011年3月2日
	 * @param model
	 * @return model
	 * @remark删除相关项
	 * 1.删除判断角色下有没有用户(有相关用户不能删除)
	 * 2.删除时删除角色相关权限表
	 */
	RoleModel delete(RoleModel model);
}
